<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>
<link rel="stylesheet" href="Estilo.css" type="text/css" />
<body>
<h3>&nbsp;</h3>
<h1>Taller Utilizacion de Foreach para consulta de un XML a travez de PHP . . .</h1>
<h3>
  <p>Como ejercicio deseamos aprovechar lo ense&ntilde;ado hasta el  momento y nos centramos en lograr darle una utilidad a la estructura de control <strong class="texto"> foreach</strong>, pero orientada a navegar los nodos de un documentos XML y organizarlos  en una tabla. </p>
  <p><br />
    Primero que todo utilizamos el anterior taller de XML, donde  creamos un documento <strong class="texto">datos.xml</strong>, donde creamos un conjunto de nodos Docente, en  el cual documentamos la informaci&oacute;n de los docentes.  </p>
  <p><strong class="texto">&lt;?xml version=&quot;1.0&quot;  encoding=&quot;UTF-8&quot;?&gt;<br />
&lt;Docentes&gt;</strong></p>
  <p><strong class="texto">
  &nbsp; &lt;Docente  tipo=&quot;Catedratico&quot;&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Nombre&gt;Jorge  Raul&lt;/Nombre&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Titulo&gt;Teologia  Clasica&lt;/Titulo&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Cargo&gt;Docente&lt;/Cargo&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&lt;Fecha_Inicio&gt;14 de  Mayo&lt;/Fecha_Inicio&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &lt;Materia&gt; Teologia I&lt;/Materia&gt;<br />
  &nbsp;&nbsp; &lt;/Docente&gt;<br />
  &nbsp;&nbsp; &lt;Docente  tipo=&quot;Catedratico&quot;&gt; <br />
  &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &lt;Nombre&gt;MILENA MILETH &lt;/Nombre&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;  &lt;Titulo&gt;ABOGADA&lt;/Titulo&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;Cargo&gt;Docente&lt;/Cargo&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Fecha_Inicio&gt;22 Febrero  2008&lt;/Fecha_Inicio&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;Materia&gt; Derecho I  &lt;/Materia&gt;<br />
  &nbsp;&nbsp; &lt;/Docente&gt;</strong></p>
  <p><strong class="texto"><br />
  &lt;/Docentes&gt;</strong></p>
  <p>Desarrollado el archivo XML, proseguimos a realizar nuestro  documento php. Como primera instancia en nuestro documento php, abrimos  campo para mandar a mostrar las etiquetas HTML que le dar&aacute;n forma al dise&ntilde;o y  estilo de la tabla. </p>
</h3>
<h3>
  <p><strong class="texto">echo('<br />
&lt;html&gt;<br />
&lt;head&gt;<br />
&lt;meta  http-equiv=&quot;Content-Type&quot; content=&quot;text/html;  charset=iso-8859-1&quot; /&gt;<br />
&lt;/head&gt;<br />
&lt;link  rel=&quot;stylesheet&quot; href=&quot;Estilo.css&quot;  type=&quot;text/css&quot; /&gt; <strong class="texto3">/* Se realiza la llamada de una hoja de estilo preside&ntilde;ada*/</strong><br />
&lt;body&gt;<br />
');</strong></p>

<p><strong class="texto">echo('<br />
  &lt;table  class=&quot;Tabla&quot;&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;thead&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;tr align=&quot;center&quot;&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;th&nbsp;  class=&quot;Linea&quot;&gt;&lt;h4&gt;Nombre&lt;/h4&gt;&lt;/th&gt; <strong class="texto3">/* Definen las celdas principales de la tabla*/</strong><br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;th&nbsp;  class=&quot;Linea&quot;&gt;&lt;h4&gt;Titulo&lt;/h4&gt;&lt;/th&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;th&nbsp;  class=&quot;Linea&quot;&gt;&lt;h4&gt;Cargo&lt;/h4&gt;&lt;/th&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;th&nbsp;  class=&quot;Linea&quot;&gt;&lt;h4&gt;Ingreso&lt;/h4&gt;&lt;/th&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;th&nbsp;  class=&quot;Linea&quot;&gt;&lt;h4&gt;Materia&lt;/h4&gt;&lt;/th&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/tr&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/thead&gt;<br />
  &nbsp;<br />
  ');</strong></p>
<h3>
  <p>Se inicializa la instancia al DOM para empezar a invocar al  archivo XML y comenzar a manipularlo con el php.</p>
</h3>
<strong class="texto">$doc = new DOMDocument(); <strong class="texto3">/* Se instancia a tarvez de una variable a la clase DOM.</strong>*/<br />
  &nbsp; <br />
  $doc-&gt;load('Datos.xml');</strong>
    <strong class="texto"><strong class="texto3">/* Se realiza la carga de nuestro documento XML </strong>*/</strong>
    <p><strong class="texto">$docentes = $doc-&gt;getElementsByTagName(&quot;Docente&quot;);</strong> <strong class="texto"><strong class="texto3">/* A travez de la function getElementsByTagName se asigna a una variable la lista de los nodos &lt;Docente&gt; encontrados en el documento XML*/</strong></p>
    <p>&nbsp;</p>
    <p><strong class="texto"><strong class="texto3">/* Se inicia el bucle foreach y se hace un recorrido sobre la variable docentes (lista de nodos) </strong>*/</strong></p>
    <p><strong class="texto">foreach( $docentes as $docente )<br />
{ </strong></p>
    <p><strong class="texto">$Nombres =  $docente-&gt;getElementsByTagName(&quot;Nombre&quot;); <br />
  $Titulos =  $docente-&gt;getElementsByTagName(&quot;Titulo&quot;);&nbsp;&nbsp; <br />
  $Cargos&nbsp; =  $docente-&gt;getElementsByTagName(&quot;Cargo&quot;);&nbsp; <br />
  $Fechas =  $docente-&gt;getElementsByTagName(&quot;Fecha_Inicio&quot;); <br />
  $Materias&nbsp; =  $docente-&gt;getElementsByTagName(&quot;Materia&quot;);</strong></p>
    <p><strong class="texto"><strong class="texto3">/* Se optienen el valor del primer elemento de la lista docentes </strong>*/</strong></p>
    <p><strong class="texto">$Nombre =  $Nombres-&gt;item(0)-&gt;nodeValue;&nbsp;&nbsp; <br />
      $Titulo =  $Titulos-&gt;item(0)-&gt;nodeValue; <br />
      $Cargo =  $Cargos-&gt;item(0)-&gt;nodeValue; <br />
      $Fecha =  $Fechas-&gt;item(0)-&gt;nodeValue; <br />
      $Materia =  $Materias-&gt;item(0)-&gt;nodeValue; </strong></p>
    <p><strong class="texto"><strong class="texto3">/* Se realiza el bloque encargado de mostrar y armar el resto de la tabla con los valores de los nodos encontrados.</strong>*/</strong></p>
    <p><strong class="texto">echo ' <br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;tr align=&quot;left&quot;&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;td class=&quot;Linea&quot;&gt;  &lt;strong class=&quot;texto2&quot;&gt;',$Nombre,'&lt;/strong&gt;&lt;/td&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;td class=&quot;Linea&quot;&gt;  &lt;strong class=&quot;texto2&quot;&gt;',$Titulo,'&lt;/strong&gt;&lt;/td&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;td class=&quot;Linea&quot;&gt;  &lt;strong class=&quot;texto2&quot;&gt;',$Cargo,'&lt;/strong&gt;&lt;/td&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;td class=&quot;Linea&quot;&gt;  &lt;strong class=&quot;texto2&quot;&gt;',$Fecha,'&lt;/strong&gt;&lt;/td&gt;<br />
  &nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;td class=&quot;Linea&quot;&gt;  &lt;strong class=&quot;texto2&quot;&gt;',$Materia,'&lt;/strong&gt;&lt;/td&gt;<br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/tr&gt;<br />
      ';</strong> </p>

    <h3>
      <p>Se termina de armar el documento php...</p>

      <p> <strong class="texto">echo('<br />
&lt;/table&gt;<br />
');</strong></p>
    </h3>
    <p><strong class="texto">echo('<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
      ');<br />
    ?&gt;</strong></p>
    <strong class="texto"></strong>
    <h3>
  <p>----------------------------------------------&gt; <strong class="texto2"><a class="texto2" href="trabajo.php" target="icontenido">VER LA EJECUCION DEL TALLER </a></strong>  &lt;--------------------------------------- </p>
  <p>&nbsp;</p>
</h3>
<h3>
  <p>&nbsp;</p>
</h3>
</body>
</html>
